(1) Field of the Invention
The present invention relates to a method of generating computer generated holograms.
(2) Description of the Art
It is well known that a three-dimensional image may be presented by forming an interference pattern or hologram on a planer surface. The three-dimensional image is visible when the hologram is appropriately illuminated. Recently, interest has grown in so-called computer generated holograms (CGHs) which offer the possibility of displaying high quality images, which need not be based upon real objects, with appropriate depth cues and without the need for viewing goggles. Interest is perhaps most intense in the medical and design fields where the need for realistic visualisation techniques is great.
Typically, a computer generated hologram involves the generation of a matrix of data values (each data value corresponding to a light transmission level) which simulates the hologram which might otherwise be formed on a real planer surface. The matrix is applied to some medium suitable for displaying the CGH such as a Spatial Light Modulator (SLM) which may be, for example, a two-dimensional array of liquid crystal elements or of acousto-optic modulators. Coherent light is directed onto the SLM using for example a laser such that the resulting output, either reflected from the SLM or transmitted through the SLM, is a modulated light pattern. An example of an SLM is an Electrically Addressable SLM (EASLM).
FIG. 1 illustrates a system for producing a holographic image using a CGH. Light from a point source 1 is collimated by optics 2 and directed towards a beamsplitter 3. Light is reflected by the beamsplitter 3 onto the surface of a spatial light modulator (SLM) 4 which is used to display the CGH. Replay optics 5, 6 direct light reflected from the SLM 4 to an image region where the image 7 is displayed. A so-called conjugate image 8 also appears in this region. In this arrangement, the SLM 4 may be an optically addressed SLM or an electrically addressed SLM.
An ideal CGH has complex light modulation, where ‘complex’ is referring to complex numbers (with real and imaginary parts) which can be used to describe both the amplitude and phase of the light. In principle, such a CGH would be capable of replaying a perfect image. Previously reported algorithms capable of designing such a CGH include the Coherent Ray Trace (CRT), the Ping-pong method and the Diffraction Specific (DS) method. CRT and the Ping-pong method involve propagating light reflected from a simulated 3D object to a CGH plane. The amplitude and phase of the wavefront at the CGH plane is then used to determine the CGH pixel transmission values. CRT makes use of ray tracing to calculate the propagation of the wavefront whilst the Ping-pong method makes use of Fourier transforms. The DS method is different in that it makes use of pre-computed look-up tables to determine the CGH pixel transmission values that will enable a particular 3D image to be displayed.
It is very difficult to obtain fully complex SLMs. SLMs suitable for the display of CGHs typically have constrained light modulation abilities. For example they may only be able to modulate the amplitude of light or only its phase. It is particularly desirable to be able to display CGHs on SLMs with only binary modulation (each pixel having only an on or off state) as these are relatively simple to fabricate. Constraining the light modulation values of the CGH so that it may be displayed on such SLMs generally results in an increase in noise in the replayed image. An intuitive explanation for this is that constrained modulation CGHs contain less ‘information’.
Algorithms exist that enable constrained modulation CGHs to be designed that replay images either with reduced noise or where the location of the noise can be controlled, e.g. shifted away from the target image. For example, Projection Onto Constraint Sets (POCS) and Direct Binary Search (DBS) can be used to generate a suitably constrained CGH. These algorithms rely upon the use of a “target image” in order to design the final CGH, and try to minimise the errors resulting from a mapping of a continuous set of transmission value pixels to a corresponding binary set. The hologram is optimised so that it results in the replay of an image as close as possible to the target image (some form of merit function is used to measure the quality/fidelity of the replay). This process places an additional heavy load on the available computer processing power, particularly as binarising algorithms which produce low noise results tend to be iterative.
The ‘target image’ is typically a complex wavefront in some 2D region of space. It is described simply by a matrix of complex numbers representing the amplitude and phase of the wavefront at sample points. When this wavefront propagates through space and is detected by a viewer's eyes, a 3D image is perceived as though the wavefront had originated from a real 3D object. This target image may be determined from the replay of a CGH designed by the CRT, Ping-pong or DS algorithms.
For a display system based on a CGH, the complexity of the SLM, in terms of the number of pixels required, is determined both by the required image size and angle of view (the angle over which the 3D image can be seen by a viewer). Particularly for multi-viewer systems, which tend to need large viewing angles, this results in a need for a large numbers of pixels (e.g. 1010 pixels for a workstation application). Even for extremely powerful computers, the complete computation process, that may include ray tracing and binarisation with POCS, can take many hours. Such mechanisms are not suitable for practical real time or near real time applications.
Attempts have been made to break the CGH computation process into smaller blocks to make the problem more tractable. These involve calculating a number of small sub-holograms or sub-CGHs which are then “stitched” together to form the final desired large CGH. For example, the article “Iterative interlacing approach for synthesis of computer generated holograms”, O. K Ersoy, J. Y. Zhuang & J. Brede, Applied Optics, Vol. 31 No. 32, November 1992, describes a process in which a first sub-hologram is designed which provides a noisy image. Further sub-holograms are added which successively reduce noise. This process however requires sequential processing of the sub-holograms and is not suited to parallel processing. Other approaches are described in “Fast decimation in frequency direct binary search algorithms for synthesis of computer generated holograms”, J-K. Zhuang & O. K. Ersoy, J. Opt. Soc. Am. A, Vol. 11, No. 1, January 1994; “Optimal decimation in frequency iterative interlacing technique for synthesis of computer generated holograms”, J-Y. Zhuang & O. K. Ersoy, J. Opt. Soc. Am. A, Vol. 12 No. 7, July 1995; and “Error reduction of quantised kinoforms by means of increasing the kinoform size”, S. Yang & T. Shimomura, Applied Optics, Vol. 37 No. 29, October 1998.
There remains a need for a method of generating binary CGHs which allows CGHs to be generated in real time or near real time. The present invention aims to satisfy this need based upon the recognition that the information in a hologram is contained in the slope or gradient of the hologram fringes, the fringes being proportional to the interference pattern which the hologram records.